Skip to content

Fix issue 719: Allow bait padding zero#757

Merged
peterpru merged 3 commits intodevfrom
allow-bait-padding-zero
Dec 15, 2025
Merged

Fix issue 719: Allow bait padding zero#757
peterpru merged 3 commits intodevfrom
allow-bait-padding-zero

Conversation

@peterpru
Copy link
Copy Markdown
Member

@peterpru peterpru commented Dec 12, 2025

When bait padding is zet to zero, the prepare_references subworkflow does not produce an output file, which causes deepvariant to fail. This PR makes it so the bedtools slop module is run even when bait padding is zero, essentially copying the input bed file.

Local test shows inputting 0 works for the tool:
image

Closes: #719

PR checklist

  • This comment contains a description of changes (with reason).
  • If you've fixed a bug or added code that should be tested, add tests!
  • If you've added a new tool - have you followed the pipeline conventions in the contribution docs
  • If necessary, also make a PR on the nf-core/raredisease branch on the nf-core/test-datasets repository.
  • Make sure your code lints (nf-core pipelines lint).
  • Ensure the test suite passes (nextflow run . -profile test,docker --outdir <OUTDIR>).
  • Ensure the test suite passes (nextflow run . -profile test_singleton,docker --outdir <OUTDIR>).
  • Check for unexpected warnings in debug mode (nextflow run . -profile debug,test,docker --outdir <OUTDIR>).
  • Usage Documentation in docs/usage.md is updated.
  • Output Documentation in docs/output.md is updated.
  • CHANGELOG.md is updated.
  • README.md is updated (including new tool citations and authors/contributors).

@peterpru peterpru self-assigned this Dec 12, 2025
@github-actions
Copy link
Copy Markdown

This PR is against the master branch ❌

  • Do not close this PR
  • Click Edit and change the base to dev
  • This CI test will remain failed until you push a new commit

Hi @peterpru,

It looks like this pull-request is has been made against the nf-core/raredisease master branch.
The master branch on nf-core repositories should always contain code from the latest release.
Because of this, PRs to master are only allowed if they come from the nf-core/raredisease dev branch.

You do not need to close this PR, you can change the target branch to dev by clicking the "Edit" button at the top of this page.
Note that even after this, the test will continue to show as failing until you push a new commit.

Thanks again for your contribution!

@peterpru peterpru changed the base branch from master to dev December 12, 2025 12:34
@github-actions
Copy link
Copy Markdown

github-actions bot commented Dec 12, 2025

nf-core pipelines lint overall result: Passed ✅ ⚠️

Posted for pipeline commit 286db43

+| ✅ 219 tests passed       |+
#| ❔   7 tests were ignored |#
!| ❗  19 tests had warnings |!
Details

❗ Test warnings:

  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/raredisease/raredisease/subworkflows/local/align_sentieon/main.nf: _ mq_metrics = SENTIEON_DATAMETRICS.out.mq_metrics.ifEmpty(null) // channel: [ val(meta), path(mq_metrics) ]
    _
  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/raredisease/raredisease/subworkflows/local/align_sentieon/main.nf: _ qd_metrics = SENTIEON_DATAMETRICS.out.qd_metrics.ifEmpty(null) // channel: [ val(meta), path(qd_metrics) ]
    _
  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/raredisease/raredisease/subworkflows/local/align_sentieon/main.nf: _ gc_metrics = SENTIEON_DATAMETRICS.out.gc_metrics.ifEmpty(null) // channel: [ val(meta), path(gc_metrics) ]
    _
  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/raredisease/raredisease/subworkflows/local/align_sentieon/main.nf: _ gc_summary = SENTIEON_DATAMETRICS.out.gc_summary.ifEmpty(null) // channel: [ val(meta), path(gc_summary) ]
    _
  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/raredisease/raredisease/subworkflows/local/align_sentieon/main.nf: _ aln_metrics = SENTIEON_DATAMETRICS.out.aln_metrics.ifEmpty(null) // channel: [ val(meta), path(aln_metrics) ]
    _
  • pipeline_if_empty_null - ifEmpty(null) found in /home/runner/work/raredisease/raredisease/subworkflows/local/align_sentieon/main.nf: _ is_metrics = SENTIEON_DATAMETRICS.out.is_metrics.ifEmpty(null) // channel: [ val(meta), path(is_metrics) ]
    _
  • schema_lint - Input mimetype is missing or empty
  • local_component_structure - rank_variants.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - annotate_consequence_pli.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - annotate_structural_variants.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - annotate_mobile_elements.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - call_snv.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - generate_cytosure_files.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - gens.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - call_structural_variants.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - annotate_mt_snvs.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - call_mobile_elements.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - variant_evaluation.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure
  • local_component_structure - annotate_genome_snvs.nf in subworkflows/local should be moved to a SUBWORKFLOW_NAME/main.nf structure

❔ Tests ignored:

  • files_exist - File is ignored: conf/modules.config
  • files_unchanged - File ignored due to lint config: .github/CONTRIBUTING.md
  • files_unchanged - File ignored due to lint config: .github/PULL_REQUEST_TEMPLATE.md
  • files_unchanged - File ignored due to lint config: assets/nf-core-raredisease_logo_light.png
  • files_unchanged - File ignored due to lint config: docs/images/nf-core-raredisease_logo_light.png
  • files_unchanged - File ignored due to lint config: docs/images/nf-core-raredisease_logo_dark.png
  • modules_config - modules_config

✅ Tests passed:

Run details

  • nf-core/tools version 3.5.1
  • Run at 2025-12-15 09:42:16

@peterpru peterpru marked this pull request as ready for review December 12, 2025 12:43
Copy link
Copy Markdown
Contributor

@fellen31 fellen31 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks ok to me to always run BEDTOOLS_PAD_TARGET_BED , but I guess you could also just skip BEDTOOLS_PAD_TARGET_BED if params.bait_padding > 0, and redirect the output from the previous process forward in the subworkflow.

I think @ramprasadn is working on removing the ext.when logic, so perhaps better to do this in the subworkflow?

@ramprasadn
Copy link
Copy Markdown
Collaborator

Yes! I am working on refactoring prepare_references subworkflow in a separate PR. I can incorporate this change into the subworflow in that PR.

@peterpru peterpru merged commit 47be064 into dev Dec 15, 2025
6 checks passed
@ramprasadn ramprasadn deleted the allow-bait-padding-zero branch December 22, 2025 12:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

No variant calling jobs if bait_padding is set to zero

3 participants